'use strict';

/**
 * @param {Egg.Application} app - egg application
 */

module.exports = app => {
  const {
    router,
    controller
  } = app;

  /** *************************** 基础接口 **********************************/
  // 查询基础参数配置
  router.post('/admin/getSysParams', controller.admin.sysParams.getSysParams);

  /** *************************** 后台用户管理相关 ***************************/
  // 后台用户登录
  router.post('/admin/login', controller.admin.adminUser.login);
  // 查询登陆用户详细信息
  router.post('/admin/getLoginUserDetail', controller.admin.adminUser.getLoginUserDetail);

  // 添加用户
  router.post('/admin/addAdminUser', controller.admin.adminUser.addAdminUser);
  // 删除用户
  router.post('/admin/deleteAdminUser', controller.admin.adminUser.deleteUser);
  // 更新用户信息
  router.post('/admin/updateAdminUser', controller.admin.adminUser.updateUser);
  // 更新用户密码,自己改自己的
  router.post('/admin/updatePwd', controller.admin.adminUser.updatePwd);
  // 查询用户列表
  router.post('/admin/queryAdminUsersList', controller.admin.adminUser.queryAdminUsersList);

  /** *************************** 后台用户角色相关 ***************************/
  // 查询所有角色信息
  router.post('/admin/queryAdminRolesList', controller.admin.adminRoles.queryAdminRolesList);
  // 添加用户角色信息
  router.post('/admin/addAdminRole', controller.admin.adminRoles.addAdminRole);
  // 修改角色信息
  router.post('/admin/updateAdminRole', controller.admin.adminRoles.updateAdminRole);
  // 删除角色(逻辑删除)
  router.post('/admin/deleteAdminRole', controller.admin.adminRoles.deleteAdminRole);
  // 设置角色权限
  router.post('/admin/setRoleAutho', controller.admin.adminRoles.setRoleAutho);
  // 获取角色拥有的权限
  router.post('/admin/getRoleAutho', controller.admin.adminRoles.getRoleAutho);
  // 获取角色拥有的菜单权限(功能级别)
  router.post('/admin/getRoleMenuUserRights', controller.admin.adminRoles.getRoleMenuUserRights);

  /** *************************** 菜单管理相关 ************************** */
  // 查询所有菜单树
  router.post('/admin/querySysMenusTree', controller.admin.sysMenu.querySysMenusTree);
  // 查询用户详细信息
  router.post('/admin/getUserInfo', controller.admin.adminUser.findByIdAdminUserInfo);
  // 查询菜单详细信息
  router.post('/admin/findMenuById', controller.admin.sysMenu.findMenuById);
  // 添加菜单
  router.post('/admin/adminAddMenu', controller.admin.sysMenu.adminAddMenu);
  // 删除菜单
  router.post('/admin/deleteMenu', controller.admin.sysMenu.deleteMenu);
  // 更新菜单
  router.post('/admin/updateMenu', controller.admin.sysMenu.updateMenu);

  /** *************单位管理*********/
  /**
   * 添加单位
   */
  router.post('/admin/addBranch', controller.admin.sysBranch.addBranch);
  /** *
   * 查询所有单位
   */
  router.post('/admin/findAllBranch', controller.admin.sysBranch.findAllBranch);
  /**
   * 删除单位
   */
  router.post('/admin/delBranch', controller.admin.sysBranch.delBranch);
  /**
   * 更新单位
   */
  router.post('/admin/updateBranch', controller.admin.sysBranch.updateBranch);
  /**
   * 查询单位详细信息
   */
  router.post('/admin/findBranchByCode', controller.admin.sysBranch.findBranchByCode);
  /** *************区域管理*********/
  /**
   * 添加区域
   */
  router.post('/admin/addArea', controller.admin.sysArea.addArea);
  /** *

   * 查询所有区域
   */
  router.post('/admin/findAllArea', controller.admin.sysArea.findAllArea);
  /**
   * 删除区域
   */
  router.post('/admin/delArea', controller.admin.sysArea.delArea);
  /**
   * 更新区域
   */
  router.post('/admin/updateArea', controller.admin.sysArea.updateArea);
  /**
   * 查询区域详细信息
   */
  router.post('/admin/findAreaByCode', controller.admin.sysArea.findAreaByCode);
  /** *********************日志操作**************************/

  /**
   * 查询日志
   */
  router.post('/admin/findSysOperationLogs', controller.admin.sysOperationLogs.findSysOperationLogs);
};